package br.com.site.fiolaser.util;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.faces.component.UIComponent;
import javax.faces.component.html.HtmlOutputText;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.ConverterException;

public class DateConverter implements Converter{  

	public Object getAsObject(FacesContext arg0, UIComponent arg1, String valor) throws ConverterException {  
		if(valor == null || valor.toString().trim().equals("") || valor.equals("--")){  
			return null;  
		} else {  			
			Date data = new Date();			
			DateFormat df = new SimpleDateFormat("dd/MM/yyyy");			
			try {
//				if (Integer.parseInt(valor.split("/")[0]) > 12 || Integer.parseInt(valor.split("/")[1]) == 0 ){
//					WebMessage.addWarningKey("mensagem.verbaMensal.mesAno.formatoInvalido");					
//				}else{				
					data = (Date) df.parse(valor);
//				}
			} catch (ParseException e) {
				e.printStackTrace();
			}
			return data;			 
		}  
	}        


	public String getAsString(FacesContext arg0, UIComponent arg1, Object valor) throws ConverterException {  

		if(valor == null || valor.toString().trim().equals("")){  
			if (arg1 instanceof HtmlOutputText)
				return "--";
			else
				return null;

		} else {  
			DateFormat df = new SimpleDateFormat("dd/MM/yyyy");	
			return df.format(valor);   
		}  
	}   

}  